Replace DynamicCaptures
with AnyRegexOutput
.
#222
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
AnyRegexOutput
is a collection type that represents a type-erased regex output with two use cases:Regex
is initialized from a string, e.g.Regex("(a)|(b)|c")
, it has typeRegex<AnyRegexOutput>
. One can iterate over the output to access output elements (the whole match followed by any captures).Regex
creation from strings, one can type-erase the match result of a strongly typed regex, e.g.Regex<(Substring, Substring, Substring)>.Match
, and use it as a drop in replacement for the dynamic regex match.This has been pitched as part of the regex type.
Example: